package com.demo.state19;

/**
 * 首先是状态接口
 * 然后是3个状态类,这个三个状态分别对于这:空闲、预订、入住。其中空闲可以完成预订和入住两个动作，
 * 预订可以完成入住和退订两个动作，入住可以退房。
 */
public interface State {
    /**
     * @desc 预订房间
     */
    void bookRoom();
    
    /**
     * @desc 退订房间
     */
    void unsubscribeRoom();
    
    /**
     * @desc 入住
     */
    void checkInRoom();
    
    /**
     * @desc 退房
     */
    void checkOutRoom();
    
}